劝大家趁早摆脱低水平努力
文 | 糖总总 weibo@糖总总
●
上周末刚跟复旦的同学见面,今年一直埋头工作,好久没跟好朋友聊天。
有意思的是第一批90后都当爸妈了,我跟着三对夫妇一起去的亲子餐厅。我之前就好奇带着孩子怎么吃饭呢?原来是爸妈轮流吃饭,其中一个陪孩子去玩,另一个可以吃两口、聊两句。不过这也没耽误大家聊聊政经八卦,政坛和金融市场怎么看。
这真的是我特别喜欢复旦的地方:复旦的同学们真的爱读书,什么都不会耽误他们关注这个世界 —— 有孩子之后,世界是更宽广,而不是传说中的没生活。
亲子餐厅里,我们竟然也聊到了编程。有个同学说单位领导都号召在学Python,就当成英语、Word、Excel一样的职场基本技能去看。
过去半年,我自己也在学Python,带出来了1000名以上零基础入门Python的学员,最大的54岁,最小的14岁,各行各业的都有。特别有意思,也有一些心得整理出来。
当然,我编程还处于非常菜鸟的程度,我对代码的理解都是从媒体和杠杆意义去理解的。因为要督促大家学习,就更多关注的是教育和认知层面。我称为让普通人摆脱零基础的最短路径,以一个能看懂的眼光和正确的姿势面对这个Coding World。
你当然可以选择不学,但是花个5分钟时间了解一下肯定有帮助的,摆脱低水平努力必备。
希望对大家有用。
●
001 学编程的作用其实类似学英语
我为什么要学习编程?这个问题就和“为什么要学习英语”?是一样的道理。就像英语一样,没有它依然可以活得很好,但是学好它,会活得更好。再说,因为 互联网发展的大势所趋,人工智能已经走到了一个改变我们生活方式的拐点。
我昨天刚看央视的前辈在群里讨论的一个视频,现在机场的地勤服务已经采用全息的,媒体人对科技都很敏感的。
图片来自网络
再比如这周看到的新闻,亚马逊试点的配送机器人已经在南加州开始投放,目前可以解决的是最后一公里的配送问题,也就是说配送员不用下车了,让机器去做就好。
大家可以想一想,自己身边的变化。
渐渐的,做某些手术不用医生了,因为机器失误率比人少,精确度比人高;做家务不需要自己来了,机器完全可以做的很好;现在,支付宝都有人脸扫描,车辆有了ETC快速通道,连车都不用人自己来开了。
相信其中一定有我们接触并且体验到的,也有我们还没有接触到的。可以预见的是,这些都在快速发展并且一步步进入到我们的生活中来。
十年前,我们讲,学好英语走遍天下都不怕。出国,与国外的人交流能拓宽眼界,促人成长。倒了今天,随着互联网的发展,大洋彼岸也不再是神秘的令人向往的地方,每天伴随着我们的成了手机,电脑,ipad,任何一个人离开这三样东西恐怕都无法忍受,甚至有时候,手机是除了你的另一半最能陪你熬夜的。
在未来,每个人都需要和机器交流,如果不懂程序的运作原理,在人机交互的时代可能会很难受,我们至少要能看懂。之前不懂英语是文盲,很快不懂编程是文盲了。
●
002 编程为自身的职业发展提供另一条道路
其实很多顶尖的领导人、公司创始人,从十年前就开始倡导人人应该可以学编程,因为编程作为信息科学的一个基本知识与技能,是一个现代人,特别是受过高等教育的现代人知识框架结构中的一个组成部分。
之前的文章跟大家说过1995 年乔布斯曾在一个访谈中谈到他 20 岁左右学习编程的经历。这里把原话找出来了,可以看一下:
他觉得每个人都应该学习一门编程语言,因为它教你如何思考。他把计算机科学看成是基础教育,每个人都应该花 1 年时间学习编程。
对于许多专业与学科,编程也是一个很有用的技术。我认识一个金融专业的高校教师,她在读书期间做分析就要编程,而她用的就是Python语言,大家稍微搜一下就会知道Python在经济,金融,统计等领域都非常流行。
其实大多数人学编程往往是因为赚钱效率更高 —— 任何一个行业早期供不应求的时候都是这样的。
上周特别逗,新生大学的公众号发出一位学员告诉我之前学Java时候接项目赚了一些,读者看到都主要问他怎么接项目的,很少人问怎么学:
这位同学两年前学的java,自己接项目就2-3万,学费早赚回来了,现在又回来学Python。看来赚钱确实是学习最好的动力。
●
003 你只是需要找到一个途径
把自己本职业务和编程结合起来
我们学编程其实并不一定要去当程序员,就像你会做菜不一定要去当厨师。
那我们要怎么用好呢?
如果说学好英语能为你的世界打开一扇门,让你拥有更多的选择的话;那么学好编程,就能让你有机会以「上帝视角」来认识和改造这个世界,并拥有几乎无限的可能性。
重点你可以关注数据和交易这两个方向。
什么意思呢?
因为在现实中的一切最终都会被信息化和数据化,你可以通过编程来对信息做任何形式的加工和处理,比如让程序去帮你收集统计数据让你做更好的决策,或者帮你做自动化交易帮你在高点自动卖出,在你睡觉的时候24小时帮你工作,极大解放你的时间和注意力。
回到我们工作本身,我拿Python数据可视化举一个例子。
比如学习数据可视化,你要学的首先就是怎么看懂各类图表,怎么让可视化来帮助自己提高信息表达效率。
为什么对职场这么重要?因为能帮你吵架吵赢啊。特别是业务部门有分歧的时候,数据是最容易让老板相信的,因为光有观点没有用,你证据拿出来看看?
更专业的说法,数据可视化不仅仅是创作出漂亮、清晰、透明的信息图表,而是通过数据可视化技能和工具推动信息有效传递和决策,让自己工作价值呈指数级增长。
所以,编程几乎可以等于你的第三只手,只要你找到一个途径把自己的业务和编程结合,乐趣和编程的美妙就来了。当别人每天继续做着重复的工作,你可以从工作中解放自己,去拥抱更大的世界。
●
004 哪门编程语言最具有现在学习的价值?
我们可以很明显的看到Python的排名不断呈现出上升的趋势,主要是因为Python够简单有效,被称为「胶水语言」,横跨大数据、机器学习、人工智能、算法工程多个互联网核心领域被广泛应用,被称作人工智能的黄金语言。国外的大公司谷歌、Facebook、亚马逊、Instagram这些都在用, 国内的知名网站豆瓣、知乎、春雨医生也是Python开发的。
什么叫胶水语言呢?
全球最好的计算机学院麻省理工MIT有一套很经典的Python入门课程,里面提到学Python就是学组装。你只要学会如何组装里面的部件,而不是从零造部件,这样就节省大量的学习时间和精力,对小白特别友好。
随着人工智能浪潮更加汹涌,Python作为人工智能的黄金语言,也会越来越火爆。
●
005 道理我都懂了,那该如何入门?
其实入门非常简单的。成长的密码往往不是快速成功,而是快速入门。
MIT Python入门课教材第一章《Getting Started》就写道:Python编程里的数学知识不超过高中代数,前提是你爱动脑子,不要一看到数学概念就害怕:
“they assume no knowledge of mathematics beyond high school algebra, but do assume that the reader is comfortable with rigorous thinking and is not intimidated by mathematical concepts”
所谓编程,就是指编写程序。
用一个类比,你把烧菜的过程写成菜谱,本质上就是在编程。
从更专业一点的角度来说,编程 = 数据结构 + 算法, 其实就是数学问题。
所以呢,可能大家只是都需要补一下高中数学知识,编程真的没你想的那么难。计算机非常可爱,像个小孩子,只会做你教他的事情。
前提是,你先学会如何和他有效沟通,就可以运用他的计算能力和存储能力 —— 用MIT课程里的数据,计算机一秒的计算能力是10亿次,存储相当于15000只非洲象🐘的体积 。这个计算能力,我们都能使用,而且能帮助我们突破阶层的局限,为什么不用呢?
如何你开始学习编程,一定要记住这三句话:
编程不是啃书听讲,而是实例驱动;
编程不是闭门造车,而是连接世界;
编程不是勤奋坚持,而是持续反馈。
大家可能都有下厨的经验,就知道光看菜谱是学不会做菜的,你一定得上手去做出来,反复练才可以。编程也是这样,它本质上是门手艺。三天不练手生,手艺是练出来的。就像是我看N多场乔丹的比赛,是不是就能去打NBA呢?
自己上机过个手,首先能发现问题,试过之后你才知道里面有多少坑,而填了这些坑,就是你长了功力的地方,因为在不断调试的过程中加深了理解。
最可怕的是,很多同学一言不合找视频,几十集视频刷半年,会容易依赖上视频,脱离了以后啥也不会,为什么呢?因为照着视频做不用自己思考,会让人觉得学习编程很简单,陷入一种以为自己在学习区,实际上却在舒适区的状态。所以,我们建议一定要通过自我项目实践和文档阅读为主完成,结合自己不明白的点去搜索正确的内容去看,视频也好,文档也好,你看起来是有针对性的,事半功倍。
找到合适入手的项目,看着Python官方文档,直接就可以开学了。在这个过程中,找到合适的视频和材料,当然可以参考。
不过就是要小心很多完善的视频资源往往稍稍过时,而且视频的教学进度往往过慢,本来你看文档半个小时能搞定的东西,放到视频里可能有一个半小时,学下来不知道要比别人多浪费多少时间。
编程领域有一个特点,大家在学习之前一定要注意,就是其中有很多“前置引用” 的知识,新手看起来一下子会觉得很懵,这是很正常的,因为编程的知识结构就是这样的,会提前出现看起来很多不懂的东西,和传统学校的线性教育方法不一样。
你要问经验非常丰富的程序员,他们每天工作的状态就是这样的,因为这个领域变化太快了。所以,你自身提问能力和解决问题的能力反而是最重点注意培养的,这也是编程世界成长的核心。
所以遇到不懂的东西,就更不能闭门造车,自己学反而要找好的社群去讨论、互相帮助,要不然就容易放弃了。
尤其是一些对新人来说“莫名其妙的”问题(比如配置不对、连不上数据库之类的),问题本身没多少技术含量,但确实新人自学过程中的拦路虎,自己瞎折腾不知道要花多少时间,但如果有人远程桌面帮忙看看,很快就可以解决。
看到这里你要问了,原来最大的门槛竟然不是技术?
对的,最大的门槛竟然是你自己。
吃不到让人幸福的饭菜,你会怪菜太难做么?是自己不愿意下厨吧?
有了实践经验你会发现,学习编程的过程中实践驱动、连接世界和持续反馈这三点,和一个人的成长过程特别类似。真实世界是不断在变动的,我们要学习的是解决问题的方法,才好更高效率地赚钱啊。
而且,Python这门语言也是你连接到一个巨大协作网络的桥梁。这张网络的溢出效应,对学习者来说好处,可以帮助你站在潮头上成长没那么累。
偏偏这桥梁还没有守卫,因此你,即便是个听到技术就头痛的文科生,也可以轻松进入。
科技不是程序员的专利,不是年轻人的专利,也不是男生的专利,年龄也不是编程的障碍。
那,你的第一行代码开始了吗?现在卡在哪儿呢?可以在评论区告诉我,我抽留言送一本《硅谷百年史》寄给你。我刚看完的,可以漂流到你那边,用睡前的时间get一下科技公司的巨变究竟有哪些让人惊奇的八卦:)
微信公众号糖总总(ID:clairetangmedia)的读者都会记得要看看这个世界正在发生什么。欢迎转发到朋友圈,低调点击一下「在看」↘️